package ar.com.tpandu.model;

import java.util.List;

public class Suscriptor extends Usuario {

	private Integer idSusc;
	private Integer edad;
	private String sexo = "";
	private String institucion = "";
	private String localidad = "";
	private String dispositivo = "";
	private List<Perfil> perfiles;

	public Suscriptor(Usuario usr) {

		super.setId(usr.getId());
		super.setLogin(getLogin());
		super.setContrasenia(usr.getContrasenia());
		super.setNombre(usr.getNombre());
		super.setApellido(usr.getApellido());
		super.setEmail(usr.getEmail());
		super.setTipo(usr.getTipo());
	}

	public Suscriptor() {
		super();
	}

	public void crearPerfil(String tipoNotificacion, List<Categoria> categorias) {
		StringBuilder nombrePerfil = new StringBuilder();
		Perfil perfil = new Perfil();

		for (int i=0; i < categorias.size(); i++) {
			
			if (i > 0) {
				nombrePerfil.append(" - ");
				nombrePerfil.append(categorias.get(i).getNombre());
			} else {
				nombrePerfil.append(categorias.get(i).getNombre());
			}
		}
				
		perfil.setNombre(nombrePerfil.toString());
		perfil.setTipoNotificacion(tipoNotificacion);
		perfil.setCategorias(categorias);

		perfiles.add(perfil);

	}

	public Perfil getPerfil(String nombre) {
		for (Perfil perfil : perfiles) {
			if (perfil.getNombre().equals(nombre))
				return perfil;
		}

		return null;
	}

	public Perfil getLastPerfil() {

		return perfiles.get(perfiles.size() - 1);
	}

	public Integer getIdSusc() {
		return idSusc;
	}

	public void setIdSusc(Integer idSusc) {
		this.idSusc = idSusc;
	}

	public Integer getEdad() {
		return edad;
	}

	public void setEdad(Integer edad) {
		this.edad = edad;
	}

	public String getSexo() {
		return sexo;
	}

	public void setSexo(String sexo) {
		this.sexo = sexo;
	}

	public String getInstitucion() {
		return institucion;
	}

	public void setInstitucion(String institucion) {
		this.institucion = institucion;
	}

	public String getLocalidad() {
		return localidad;
	}

	public void setLocalidad(String localidad) {
		this.localidad = localidad;
	}

	public String getDispositivo() {
		return dispositivo;
	}

	public void setDispositivo(String dispositivo) {
		this.dispositivo = dispositivo;
	}

	public List<Perfil> getPerfiles() {
		return perfiles;
	}

	public void setPerfiles(List<Perfil> perfiles) {
		this.perfiles = perfiles;
	}

}
